home *** CD-ROM | disk | FTP | other *** search
- -- stack: in
- -- format: 8 (HyperCard 1)
- -- flags: 0x0 (none)
- -- protect password hash: 0
- -- maximum user level: 5 (scripting)
- -- window: Rect(x1=0, y1=0, x2=0, y2=0)
- -- screen: Rect(x1=0, y1=0, x2=0, y2=0)
- -- card dimensions: w=0 h=0
- -- scroll: x=0 y=0
- -- background count: 1
- -- first background id: 2778
- -- card count: 1
- -- first card id: 2866
- -- list block id: 2513
- -- print block id: 0
- -- font table block id: 0
- -- style table block id: 0
- -- free block count: 1
- -- free size: 992 bytes
- -- total size: 18912 bytes
- -- stack block size: 5632 bytes
- -- created by hypercard version: 0x00000000
- -- compacted by hypercard version: 0x00000000
- -- modified by hypercard version: 0x00000000
- -- opened by hypercard version: 0x00000000
- -- patterns[0]: 0x0000000000000000
- -- patterns[1]: 0x8000000008000000
- -- patterns[2]: 0x8800220088002200
- -- patterns[3]: 0x8888222288882222
- -- patterns[4]: 0x88AA22AA88AA22AA
- -- patterns[5]: 0xCCAA33AACCAA33AA
- -- patterns[6]: 0xEEAABBAAEEAABBAA
- -- patterns[7]: 0xEEBBBBEEEEBBBBEE
- -- patterns[8]: 0xFFBBFFEEFFBBFFEE
- -- patterns[9]: 0xFFBBFFFFFFBBFFFF
- -- patterns[10]: 0x8010022001084004
- -- patterns[11]: 0xFFFFFFFFFFFFFFFF
- -- patterns[12]: 0x8822882288228822
- -- patterns[13]: 0x1122448811224488
- -- patterns[14]: 0xC4800C6843023026
- -- patterns[15]: 0xB130031BD8C00C8D
- -- patterns[16]: 0xAA00AA00AA00AA00
- -- patterns[17]: 0x8822552288225522
- -- patterns[18]: 0x8855225588552255
- -- patterns[19]: 0x77DD77DD77DD77DD
- -- patterns[20]: 0x8000000000000000
- -- patterns[21]: 0xAA55AA55AA55AA55
- -- patterns[22]: 0x038448300C020101
- -- patterns[23]: 0x8244394482010101
- -- patterns[24]: 0x8814224188412214
- -- patterns[25]: 0x8080413E080814E3
- -- patterns[26]: 0x22048C7422179810
- -- patterns[27]: 0xBE808808EB088880
- -- patterns[28]: 0x25C8328964244C92
- -- patterns[29]: 0xA29C41BE2AC914EB
- -- patterns[30]: 0x40A00000040A0000
- -- patterns[31]: 0x8040200002040800
- -- patterns[32]: 0xAA00800088008000
- -- patterns[33]: 0xFF80808080808080
- -- patterns[34]: 0x081C22C180010204
- -- patterns[35]: 0xFF808080FF080808
- -- patterns[36]: 0xF87422478F172271
- -- patterns[37]: 0xBF00BFBFB0B0B0B0
- -- patterns[38]: 0xFF7FBE5DA2418000
- -- patterns[39]: 0xFAF5FAF5A050A050
- -- checksum: 0x0
- ----- HyperTalk script -----
- on openstack
- set userlevel to 5
- end openstack
-
- on update
- global player,err
- if player is 1 then
- if err is 0 then
- set hilite of card button "player 1" to false
- set hilite of card button "player 2" to true
- put empty into line 1 to 2 of card field 1
- put empty into line 1 to 2 of card field 2
- put "Your turn!" & return & "==========" & return into line 1 of card field 2
- put "Wait!" & return & "==========" & return into line 1 of card field 1
- put 2 into player
- end if
- else
- if err is 0 then
- set hilite of card button "player 2" to false
- set hilite of card button "player 1" to true
- put empty into line 1 to 2 of card field 1
- put empty into line 1 to 2 of card field 2
- put "Your turn!" & return & "==========" & return into line 1 of card field 1
- put "Wait!" & return & "==========" & return into line 1 of card field 2
- put 1 into player
- end if
- end if
- put 0 into err
- updatescore
- end update
-
- on updatescore
- global board,play1tot,play2tot
- put 0 into play1tot
- put 0 into play2tot
- repeat with i = 1 to 9
- if item i of board is 1 then
- add 1 to play1tot
- else
- if item i of board is 2 then
- add 1 to play2tot
- end if
- end if
- end repeat
- put play1tot into card field "play1score"
- put play2tot into card field "play2score"
- wincheck
- end updatescore
-
- on wincheck
- global play1tot,play2tot,board,win
- if play1tot + play2tot > 4 then
- put 0 into tot
- add item 1 of board to tot
- add item 2 of board to tot
- add item 3 of board to tot
- if tot is 3 then player1won 1,2,3
- if tot is 6 then player2won 1,2,3
- put 0 into tot
- add item 4 of board to tot
- add item 5 of board to tot
- add item 6 of board to tot
- if tot is 3 then player1won 4,5,6
- if tot is 6 then player2won 4,5,6
- put 0 into tot
- add item 7 of board to tot
- add item 8 of board to tot
- add item 9 of board to tot
- if tot is 3 then player1won 7,8,9
- if tot is 6 then player2won 7,8,9
- put 0 into tot
- add item 1 of board to tot
- add item 5 of board to tot
- add item 9 of board to tot
- if tot is 3 then player1won 1,5,9
- if tot is 6 then player2won 1,5,9
- put 0 into tot
- add item 3 of board to tot
- add item 5 of board to tot
- add item 7 of board to tot
- if tot is 3 then player1won 3,5,7
- if tot is 6 then player2won 3,5,7
- put 0 into tot
- add item 1 of board to tot
- add item 4 of board to tot
- add item 7 of board to tot
- if tot is 3 then player1won 1,4,7
- if tot is 6 then player2won 1,4,7
- put 0 into tot
- add item 2 of board to tot
- add item 5 of board to tot
- add item 8 of board to tot
- if tot is 3 then player1won 2,5,8
- if tot is 6 then player2won 2,5,8
- put 0 into tot
- add item 3 of board to tot
- add item 6 of board to tot
- add item 9 of board to tot
- if tot is 3 then player1won 3,6,9
- if tot is 6 then player2won 3,6,9
- if (win is 0) and (9 is not in board) then
- play "c"
- play "a"
- play "t"
- put empty into card field 2
- put empty into card field 1
- repeat 12
- put "Cat's Game!" & return after card field 2
- put "Cat's Game!" & return after card field 1
- end repeat
- put 1 into win
- flash 5
- exit to hypercard
- end if
- end if
- end wincheck
-
- on player1won x,y,z
- displaywin x,y,z
- add 1 to card field win1score
- put empty into card field 1
- put empty into card field 2
- repeat 12
- put "You win!" & return after card field 1
- put "You lose!" & return after card field 2
- end repeat
- end player1won
-
- on player2won x,y,z
- displaywin x,y,z
- add 1 to card field win2score
- put empty into card field 2
- put empty into card field 1
- repeat 12
- put "You win!" & return after card field 2
- put "You lose!" & return after card field 1
- end repeat
- end player2won
-
- on displaywin x,y,z
- global win
- play "harpsichord" tempo 120 "c5e gq fe3 ee3 de3 ce gq fe3 ee3 de3 ce gq fe3 ee3 fe3 deq"
- repeat 5
- set hilite of card button x to true
- set hilite of card button y to true
- set hilite of card button z to true
- set hilite of card button x to false
- set hilite of card button y to false
- set hilite of card button z to false
- end repeat
- put 1 into win
- end displaywin
-
-
-
-
-